package com.pkx.guide.info.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.pkx.guide.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 *
 * 诱导屏发布信息表
 * @author sunsy
 * @since 2023-11-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("t_info_guide_publish")
@Schema(name="TInfoGuidePublish对象", description="诱导屏发布信息表")
public class TInfoGuidePublish extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @Schema(description = "设备id")
    @TableField("guide_id")
    private Integer guideId;

    @Schema(description = "诱导屏设备编号")
    @TableField("guid_no")
    private String guidNo;

    @Schema(description = "发布类型 0：图片 1：文字")
    @TableField("publish_type")
    private Integer publishType;

    @Schema(description = "诱导屏类型 0-三思 1-乾丰")
    @TableField("guide_type")
    private Integer guideType;

    @Schema(description = "设备模式类型 0：自动  1：手动  2：感应控制")
    @TableField("mode_type")
    private Integer modeType;

    @Schema(description = "设备模式名称")
    @TableField("mode_name")
    private String modeName;

    @Schema(description = "播放表id")
    @TableField("play_list_id")
    private Integer playListId;

    @Schema(description = "播放表名称")
    @TableField("play_list_name")
    private String playListName;

    @Schema(description = "播放表类型 0-预设 1-自定义")
    @TableField("play_list_type")
    private Integer playListType;

    @Schema(description = "方案编号")
    @TableField("scheme_id")
    private Integer schemeId;

    @Schema(description = "方案名称")
    @TableField("scheme_name")
    private String schemeName;

    @Schema(description = "方案明细编号")
    @TableField("scheme_detail_id")
    private Integer schemeDetailId;

    @Schema(description = "发布的图片编号")
    @TableField("img_id")
    private String imgId;

    @Schema(description = "发布的图片内容 0:中运量车道 1:车辆直行 2:系统测试")
    @TableField("img_content_type")
    private Integer imgContentType;

    @Schema(description = "发布的图片内容")
    @TableField("img_content_name")
    private String imgContentName;

    @Schema(description = "发布的图片地址")
    @TableField("img_url")
    private String imgUrl;

    @Schema(description = "发布的文字内容，多屏以;分隔")
    @TableField("text")
    private String text;

    @Schema(description = "发布的文字字体，多屏以;分隔")
    @TableField("font")
    private String font;

    @Schema(description = "发布的文字大小，多屏以;分隔")
    @TableField("font_size")
    private String fontSize;

    @Schema(description = "发布的文字颜色，多屏以;分隔")
    @TableField("font_color")
    private String fontColor;

    @Schema(description = "发布详情，ip和prgid的json数组字符串")
    @TableField("publish_detail")
    private String publishDetail;

    @Schema(description = "发布开始时刻，例12:00")
    @TableField("start_time_scale")
    private String startTimeScale;

    @Schema(description = "发布结束时刻，例12:00")
    @TableField("end_time_scale")
    private String endTimeScale;

    @Schema(description = "发布时间")
    @TableField("publish_time")
    private String publishTime;

    @Schema(description = "是否发布 0:否 1:是")
    @TableField("is_publish")
    private Integer isPublish;

    @Schema(description = "自动发布运行状态 0-开启 1-停止")
    @TableField("state")
    private Integer state;

    @Schema(description = "是否发布成功")
    @TableField(exist = false)
    private Boolean publishStatus;

    @Schema(description = "逻辑字段：播放表")
    @TableField(exist = false)
    private TInfoGuidePlayList guidePlayList;

    @Schema(description = "逻辑字段：设备id，多个以,分隔")
    @TableField(exist = false)
    private String guideIds;

    @Schema(description = "逻辑字段：诱导屏设备编号，多个以,分隔")
    @TableField(exist = false)
    private String guidNos;

    @Schema(description = "是否节假日 0是 1否")
    @TableField("holidays")
    private Integer holidays;



}
